Information processing apparatus, information processing method, and non-transitory computer readable medium

ABSTRACT

An information processing apparatus includes a receiving unit, a determining unit, and a transmission controller. The receiving unit receives a notification to inquire about a state of a user of the information processing apparatus, which is portable, from a different information processing apparatus. If the notification is received by the receiving unit, the determining unit determines whether communication from the other information processing apparatus is acceptable in the state of the user. If the determination unit determines that the communication from the other information processing apparatus is not acceptable in the state of the user, the transmission controller controls transmission so as not to transmit the state of the user.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is based on and claims priority under 35 USC 119 fromJapanese Patent Application No. 2013-114294 filed May 30, 2013.

BACKGROUND Technical Field

The present invention relates to an information processing apparatus, aninformation processing method, and a non-transitory computer readablemedium.

SUMMARY

According to an aspect of the invention, there is provided aninformation processing apparatus including a receiving unit, adetermining unit, and a transmission controller. The receiving unitreceives a notification to inquire about a state of a user of theinformation processing apparatus, which is portable, from a differentinformation processing apparatus. If the notification is received by thereceiving unit, the determining unit determines whether communicationfrom the other information processing apparatus is acceptable in thestate of the user. If the determination unit determines that thecommunication from the other information processing apparatus is notacceptable in the state of the user, the transmission controllercontrols transmission so as not to transmit the state of the user.

BRIEF DESCRIPTION OF THE DRAWINGS

Exemplary embodiments of the present invention will be described indetail based on the following figures, wherein:

FIG. 1 conceptually illustrates the module configuration diagram of anexemplary configuration according to a first exemplary embodiment;

FIG. 2 is a descriptive diagram illustrating an exemplary configurationof a system when the exemplary embodiments are realized;

FIG. 3 is a flowchart illustrating a general exemplary presence process;

FIG. 4 is a flowchart illustrating another general exemplary presenceprocess;

FIG. 5 is a flowchart illustrating an exemplary process according to thefirst exemplary embodiment;

FIG. 6 is a flowchart illustrating another exemplary process accordingto the first exemplary embodiment;

FIG. 7 is a flowchart illustrating another exemplary process accordingto the first exemplary embodiment;

FIG. 8 is a flowchart illustrating another exemplary process accordingto the first exemplary embodiment;

FIG. 9 conceptually illustrates the module configuration diagram of anexemplary configuration according to a second exemplary embodiment;

FIG. 10 is a flowchart illustrating an exemplary process according tothe second exemplary embodiment;

FIG. 11 conceptually illustrates the module configuration diagram of anexemplary configuration according to a third exemplary embodiment;

FIG. 12 is a flowchart illustrating an exemplary process according tothe third exemplary embodiment;

FIG. 13 is a flowchart illustrating another exemplary process accordingto the third exemplary embodiment;

FIG. 14 is a descriptive diagram illustrating an exemplary datastructure of a non-acceptable state list;

FIG. 15 is a descriptive diagram illustrating an exemplary datastructure of a non-acceptable state tablefor-every-communication-method; and

FIG. 16 is a block diagram illustrating an exemplary hardwareconfiguration of a computer realizing the exemplary embodiments.

DETAILED DESCRIPTION

Exemplary embodiments of the present invention will herein be describedwith reference to the attached drawings.

FIG. 1 conceptually illustrates the module configuration diagram of anexemplary configuration according to a first exemplary embodiment.

Modules generally mean components, such as software (computer programs)or hardware, which are capable of being logically separated.Accordingly, the modules in the exemplary embodiments mean not only themodules in the computer programs but also the modules in a hardwareconfiguration. The computer programs (the programs causing a computer toexecute processes, the programs causing the computer to function asunits, and the programs causing the computer to realize functions),systems, and methods for realizing the functions of such modules arealso described in the exemplary embodiments. However, although words of“storing”, “stored”, and the likes are used for convenience, these wordsmean “storing something in a storage unit” or “causing a component tostore something in the storage unit” when the computer programs aredescribed in the exemplary embodiments. The modules may have one-to-onecorrespondence with functions. In installation, one module may becomposed of one program, multiple modules may be composed of oneprogram, or one module may be composed of multiple programs. Multiplemodules may be executed by one computer or one module may be executed bymultiple computers in a distributed or parallel environment. One modulemay include other modules. “Connection” is hereinafter used not only forphysical connection but also for logical connection (for example,transmission and reception of data, instructions, and referencerelationship between pieces of data). “Predetermined” means thatsomething is determined before a target process is performed and is usedto include the determination in accordance with the current status orstate or in accordance with the previous statuses or states as long asbefore the target process is performed even before a process accordingto an exemplary embodiment is started or even after the processaccording to the exemplary embodiment is started. When multiple“predetermined values” exist, the multiple predetermined values may bedifferent from each other or two or more values (including all thevalues) may be equal to each other. A description in which “B isperformed if A” means that “it is determined whether A and, if it isdetermined that A, B is performed.” However, a case in which thedetermination of whether A is not necessary is excluded.

A system or an apparatus may have a configuration in which multiplecomputers, multiple hardware components, multiple units, or the likesare connected via a communication unit, such as a network (includingone-to-one correspondence communication connection), and may alsoinclude a case in which the system or the apparatus is realized by onecomputer, one hardware component, one unit, or the like. The “apparatus”and the “system” are used as synonyms. The “system” does not include asocial “mechanism” (social system) that is an artificial agreement.

When multiple processes are performed for every processing in eachmodule or in the module, target information is read out from a storageunit for every processing and the result of the processing is writteninto the storage unit after the processing is performed. Accordingly,the description of the readout from the storage unit before theprocessing and the writing into the storage unit after the processingmay be omitted. The storage unit may be a hard disk, a random accessmemory (RAM), an external storage medium, a storage unit via acommunication line, a register in a central processing unit (CPU), orthe like.

An information processing apparatus (terminal 100) according to thefirst exemplary embodiment communicates with a terminal 180. Referringto FIG. 1, the terminal 100, a presence server 150, and the terminal 180are connected to each other via a communication line 199 a and acommunication line 199 b. The “communication” here means communicationfrom a user of the terminal 180 to a user of the terminal 100.Specifically, the communication means communication (phone call with,for example, a television telephone or an Internet protocol (IP)telephone) from the terminal 180 to the terminal 100 with an operationby the user. Although the communication line 199 a and the communicationline 199 b are generally wireless communication, the communication line199 a and the communication line 199 b may be wired communication.

The terminal 100 includes a communication module 105, a user stateacquisition module 110, a determination module 115, and a communicationcontrol module 120.

The communication module 105 is connected to a communication module 155in the presence server 150 via the communication line 199 a. Thecommunication module 105 is used to communicate with the terminal 180via the communication line 199 a, the presence server 150, and thecommunication line 199 b. The communication module 105 receives anotification to inquire about the state of the user of the terminal 100,which is portable, from the other terminal 180, which is portable. Thisinquiry notification is also referred to as a presence use request. Thenotification from the terminal 180 may be directly transmitted from theterminal 180 or may be transmitted from the terminal 180 via thepresence server 150. The state may be directly transmitted to theterminal 180 or may be transmitted to the terminal 180 via the presenceserver 150.

The communication module 105 may receive a communication method from theterminal 180, in addition to the presence use request. The“communication method” here means a method of communication from theuser of the terminal 180 to the user of the terminal 100 after a replyindicating that the communication from the terminal 180 is acceptable inthe state of the user of the terminal 100 is transmitted from theterminal 100 to the terminal 180 in response to the presence userequest. Specifically, the communication method is, for example, a phonecall or a face-to-face interview (also referred to as a “face to facemeeting” or a “direct meeting”: such a meeting is hereinafter alsoreferred to as “face to face (F2F)”).

When the communication method is the F2F, the communication module 105may receive the position of the terminal 180 (the user of the terminal180).

The communication module 105 may receive a request to cancel thenotification from the terminal 180 after the notification of thepresence use request is received.

The user state acquisition module 110 acquires the state of the user ofthe terminal 100. For example, the user state acquisition module 110 mayindicate that the presence use request is received from the user of theterminal 180 in a display unit in the terminal 100 to prompt the user ofthe terminal 100 to input the current state with an operation with akeyboard, a touch panel, etc. of the terminal 100. Alternatively, theuser state acquisition module 110 may refer to an electronic diary ofthe user of the terminal 100 to acquire the current plan in the diary.Alternatively, the user state acquisition module 110 may use a globalpositioning system (GPS), an acceleration sensor, a sound pressure(audio) sensor (for example, a microphone), an optical sensor, ageomagnetic sensor, or the like to acquire the state of the user of theterminal 100. These sensors may be incorporated in the terminal 100 ormay be held by the user. When the sensor is held by the user, the userstate acquisition module 110 may communicate with the sensor to acquirethe result of the detection by the sensor. For example, the user stateacquisition module 110 may detect the location of the user of theterminal 100 from an output from the GPS. The user state acquisitionmodule 110 may detect the fact that the user of the terminal 100 ismoving or the user of the terminal 100 is at rest from an output fromthe acceleration sensor or may detect the fact that the user of theterminal 100 is talking from an output from the sound pressure sensor.The user state acquisition module 110 may detect the state of atelephone module in the terminal 100 to detect the fact that the user ofthe terminal 100 is on the phone. The user state acquisition module 110may communicate with a communication unit (a communication relay unit)provided in, for example, a meeting room and may detect the location ofthe communication unit to detect the location of the terminal 100 (thelocation where the user of the terminal 100 exists). Alternatively, acombination of multiple detection methods, among the detection methodsdescribed above, may be used. For example, the user state acquisitionmodule 110 may recognize the fact that the user of the terminal 100 isout of the office from an output from the GPS and the fact that the userof the terminal 100 is walking from an output from the accelerationsensor. In the determination of whether the user of the terminal 100 isout of the office with the output from the GPS, the user stateacquisition module 110 may recognize that the user of the terminal 100is not out of the office if the user of the terminal 100 is within arange of the locations (for example, a building where the office of theuser is located) in which the user of the terminal 100 usually stays andwhich is registered in advance and may recognize that the user of theterminal 100 is out of the office if the user of the terminal 100 isoutside the range.

The determination module 115 determines whether the communication fromthe terminal 180 is acceptable in the state of the user of the terminal100 when the notification is received by the communication module 105.The determination is based on a list of non-acceptable states. Thedetermination module 115 determines that the communication from theterminal 180 is not acceptable if the current state is in the list. Forexample, a non-acceptable state list 1400 is used as the list. FIG. 14is a descriptive diagram illustrating an exemplary data structure of thenon-acceptable state list 1400. For example, “during meeting”, “onphone”, “go home”, and “holiday” are stored in the non-acceptable statelist 1400. Specifically, the determination module 115 determines thatthe communication from the terminal 180 is non-acceptable if the stateof the user of the terminal 100 is included in the non-acceptable statelist 1400. The determination module 115 determines that thecommunication from the terminal 180 is acceptable if the state of theuser of the terminal 100 is not included in the non-acceptable statelist 1400.

When the notification is received by the communication module 105, thedetermination module 115 may determine whether the communication methodreceived by the communication module 105 is acceptable in the state ofthe user of the terminal 100. The determination of whether thecommunication method is acceptable in the state may be based on a tablein which the “communication methods” are stored in association with atleast the “states.” In this case, the determination may be performed byextracting “information indicating whether the communication method isacceptable” in the table, which corresponds to the detected state of theuser and the request from the other terminal. For example, anon-acceptable state table for-every-communication-method 1500 is usedas the table. FIG. 15 is a descriptive diagram illustrating an exemplarydata structure of the non-acceptable state tablefor-every-communication-method 1500. The non-acceptable state tablefor-every-communication-method 1500 includes a communication methodcolumn 1510, a location column 1520, and a state column 1530. Thecommunication methods from the user of the terminal 180 are stored inthe communication method column 1510. The locations that areinappropriate (non-accessible) in combinations with the states stored inthe state column 1530 in the communication by the respectivecommunication methods are stored in the location column 1520. When“Null” is specified in the location column 1520, any location isdetermined to be non-accessible if the state corresponds to the statestored in the state column 1530. The states that are inappropriate(non-accessible) in combinations with the locations stored in thelocation column 1520 in the communication by the respectivecommunication methods are stored in the state column 1530. When “Null”is specified in the state column 1530, any state is determined to benon-accessible if the location corresponds to the location stored in thelocation column 1520.

When the communication method received by the communication module 105(the communication method transmitted from the terminal 180) is includedin the communication method column 1510, it is determined to benon-acceptable if the state of the user of the terminal 100corresponding to the communication method is included in the locationcolumn 1520 and the state column 1530. It is determined that thecommunication from the terminal 180 is acceptable if the state of theuser of the terminal 100 is not included in the location column 1520 northe state column 1530.

In the non-acceptable state table for-every-communication-method 1500,when “Telephone” is specified in the communication method column 1510,“Null” is specified in the location column 1520, and “On phone” isspecified in the state column 1530, the communication method isnon-acceptable regardless of the location if the state is on the phonewhen the communication method is the telephone. When “Telephone” isspecified in the communication method column 1510, “Null” is specifiedin the location column 1520, and “During meeting” is specified in thestate column 1530, the communication method is non-acceptable regardlessof the location if the state is during a meeting when the communicationmethod is the telephone. When “F2F” is specified in the communicationmethod column 1510, “Location different from that of presence userequester” is specified in the location column 1520, and “Null” isspecified in the state column 1530, the communication method isnon-acceptable regardless of the state if the location is different fromthat of a presence use requester when the communication method is theF2F. When “F2F” is specified in the communication method column 1510,“Null” is specified in the location column 1520, and “On phone” isspecified in the state column 1530, the communication method isnon-acceptable regardless of the location if the state is on the phonewhen the communication method is the F2F. When “F2F” is specified in thecommunication method column 1510, “Null” is specified in the locationcolumn 1520, and “During meeting” is specified in the state column 1530,the communication method is non-acceptable regardless of the location ifthe state is during a meeting when the communication method is the F2F.

Although the determination module 115 performs the determination on thebasis of the combination of the location column 1520 and the statecolumn 1530 with the communication method column 1510 in thenon-acceptable state table for-every-communication-method 1500, thedetermination module 115 may perform the determination on the basis ofthe combination of only the state column 1530 with the communicationmethod column 1510. In this case, it is sufficient for thenon-acceptable state table for-every-communication-method 1500 toinclude the communication method column 1510 and the state column 1530.Although “Null” is specified in either of the location column 1520 andthe state column 1530 in the example in FIG. 15, conditions may bestored in both the location column 1520 and the state column 1530. Forexample, when the location is “Customer site” and the state is “Duringmeeting”, the communication method “Telephone” may be determined to benon-acceptable.

The communication control module 120 controls the communication module105 so that the state of the user of the terminal 100 is not transmittedto the terminal 180 if the determination module 115 determines that thecommunication method is not acceptable.

The communication control module 120 may control the communicationmodule 105 so that the state of the user of the terminal 100 istransmitted to the terminal 180 as a reply to the notification receivedby the communication module 105 only if the determination module 115determines that the communication method is acceptable.

The communication control module 120 may control the communicationmodule 105 so that the state of the user of the terminal 100 is nottransmitted to the terminal 180 if the communication module 105 receivesthe cancel request.

The communication control module 120 may control the communicationmodule 105 so that the state of the user of the terminal 100 istransmitted to the terminal 180 if the result of the determination bythe determination module 115 is changed from the non-acceptabledetermination to the acceptable determination.

The presence server 150 includes the communication module 155, apresence control module 160, a user management module 165, a presencestate management module 170, and a presence state storage module 175.The presence server 150 controls the communication concerning presencebetween the terminal 100 and the terminal 180 to manage presenceinformation.

The communication module 155 is connected to the communication module105 in the terminal 100 via the communication line 199 a and isconnected to a communication module 185 in the terminal 180 via thecommunication line 199 b. The communication module 155 relays thecommunication in order to manage the communication concerning thepresence between the terminal 100 and the terminal 180.

The presence control module 160 controls the transmission to the otherterminal in accordance with the presence use request between theterminal 100 and the terminal 180. However, the communication from theterminal 180 is transmitted to the terminal 100, which is thedestination, and the communication from the terminal 100 is transmittedto the terminal 180, which is the destination, in the first exemplaryembodiment.

The user management module 165 manages the user of the terminal 100 andthe user of the terminal 180.

The presence state management module 170 manages the presence statestorage module 175 in accordance with the communication concerning thepresence use request between the terminal 100 and the terminal 180. Inaddition, the presence state management module 170 updates a presenceuse state managed by the presence state storage module 175 when thepresence use request is received from a terminal other than the terminal180.

The use state of the terminal 180 using the presence information (forexample, the presence of the terminal 180 using the presence informationand/or the use count) is registered in association with the terminal 100in the presence state storage module 175.

The terminal 180 includes the communication module 185 and a presenceconfirmation module 190.

The communication module 185 is connected to the communication module155 in the presence server 150 via the communication line 199 b. Thecommunication module 185 transmits the notification to inquire about thestate of the user of the terminal 100 to the terminal 100 via thepresence server 150. Specifically, as described above, the communicationmodule 185 transmits the presence use request to be received by thecommunication module 105. The communication module 185 may transmit thecommunication method from the terminal 180 (the communication methodfrom the user of the terminal 180) that is included in the inquirynotification. Specifically, as described above, the communication module185 may transmit the communication method to be received by thecommunication module 105. The communication module 185 may transmit theposition of the terminal 180 (the user of the terminal 180) if thecommunication method is the F2F. Specifically, as described above, thecommunication module 185 may transmit the position to be received by thecommunication module 105. The position is, for example, a coordinateoutput from a GPS included in the terminal 180.

The communication module 185 may transmit a request to cancel thenotification of the presence use request to the terminal 100 after thecommunication module 185 transmits the notification of the presence userequest to the terminal 100.

The presence confirmation module 190 inquires about the state of theuser of the terminal 100 before the terminal 180 establishes thecommunication with the user of the terminal 100 (the presence userequest). If the reply indicating that the communication method isacceptable is transmitted, the presence confirmation module 190communicates with the user of the terminal 100. For example, thepresence confirmation module 190 generates the presence use request inresponse to an operation with, for example, operation keys or the touchpanel of the terminal 100 and transmits the presence use request to thepresence server 150 via the communication module 185 and thecommunication line 199 b.

FIG. 2 is a descriptive diagram illustrating an exemplary configurationof a system when the exemplary embodiments are realized.

Referring to FIG. 2, a terminal 200A, a terminal 200B, a terminal 200C,a terminal 200D, a terminal 200E, and a presence server 250 areconnected to each other via a communication line 299. The presenceserver 150 illustrated in FIG. 1 corresponds to the presence server 250,the terminal 100 and the terminal 180 illustrated in FIG. 1 eachcorrespond to any of the terminals 200A to 200E, and the communicationline 199 a and the communication line 199 b illustrated in FIG. 1 eachcorrespond to the communication line 299.

Although the five terminals are exemplified in FIG. 2, the number of theterminals is not limited to five as long as multiple terminals areincluded in the system. Multiple presence servers 250 may be included inthe system.

FIG. 3 is a flowchart illustrating a general exemplary presence process.The exemplary process illustrated in the flowchart in FIG. 3 is not aprocess according to the exemplary embodiments.

Referring to FIG. 3, in Step S302, a terminal A 300 submits a userconfirmation request to a presence server 350. The terminal A 300generates a user confirmation request message, which is a message torequest confirmation of the user of the terminal A 300, in response toan operation by the user to transmit the user confirmation requestmessage to the presence server 350.

In Step S304, the presence server 350 returns a response to the terminalA 300. Upon reception of the user confirmation request message, thepresence server 350 generates a presence user confirmation responsemessage, which is a response to the user confirmation request message,to transmit the presence user confirmation response message to theterminal A 300. The terminal A 300 acquires information concerning theuse state of another terminal B 380 using the presence information forthe terminal A 300 (for example, the presence of the other terminal B380 using the presence information about the terminal A 300 and/or theuse count) from the presence user confirmation response message anddetermines the presence of the other terminal B 380 using the presenceinformation for the terminal A 300 on the basis of the acquiredinformation (in other words, the terminal A 300 determines whether atleast one terminal B 380 using the presence information for the terminalA 300 exists on the basis of the acquired information).

In Step S306, the terminal B 380 submits the presence use request to thepresence server 350.

In Step S308, the presence server 350 notifies the terminal A 300 of thepresence use request.

In Step S310, the terminal A 300 submits a presence registration requestto the presence server 350.

In Step S312, the presence server 350 transmits a presence notificationto the terminal B 380.

As described above, the reply is returned to the presence use requestwith no exception in the process that is not according to the exemplaryembodiments to cause wasteful communication (Step S310 and Step S312) ifthe communication method is non-acceptable in the state of the user ofthe terminal A 300.

FIG. 4 is a flowchart illustrating another general exemplary presenceprocess. The exemplary process illustrated in the flowchart in FIG. 4 isnot a process according to the exemplary embodiments. In the exemplaryprocess illustrated in FIG. 4, the states of the user of the terminal A300 are added to the exemplary process illustrated in FIG. 3 as thepresence registration request from the terminal A 300 and as thepresence notification to the terminal B 380.

Referring to FIG. 4, in Step S402, the terminal A 300 submits the userconfirmation request to the presence server 350. Step S402 is the sameas Step S302 illustrated in FIG. 3.

In Step S404, the presence server 350 returns a response to the terminalA 300. Step S404 is the same as Step S304 illustrated in FIG. 3.

In Step S406, the terminal B 380 submits the presence use request to thepresence server 350.

In Step S408, the presence server 350 notifies the terminal A 300 of thepresence use request.

In Step S410, the terminal A 300 submits the presence registrationrequest to the presence server 350 and transmits during meeting 410 a tothe presence server 350 as the state of the user of the terminal A 300.

In Step S412, the presence server 350 transmits the presencenotification to the terminal B 380 and transmits during meeting 412 a tothe terminal B 380 as the state of the user of the terminal A 300.

In Step S414, the terminal B 380 submits the presence use request to thepresence server 350.

In Step S416, the presence server 350 notifies the terminal A 300 of thepresence use request.

In Step S418, the terminal A 300 submits the presence registrationrequest to the presence server 350 and transmits phone call acceptable418 a to the presence server 350 as the state of the user of theterminal A 300.

In Step S420, the presence server 350 transmits the presencenotification to the terminal B 380 and transmits phone call acceptable420 a to the terminal B 380 as the state of the user of the terminal A300.

In Step S422, the terminal B 380 submits the presence use request to thepresence server 350.

In Step S424, the presence server 350 notifies the terminal A 300 of thepresence use request.

In Step S426, the terminal A 300 submits the presence registrationrequest to the presence server 350 and transmits during meeting 426 a tothe presence server 350 as the state of the user of the terminal A 300.

In Step S428, the presence server 350 transmits the presencenotification to the terminal B 380 and transmits during meeting 428 a tothe terminal B 380 as the state of the user of the terminal A 300.

As described above, the submission of the presence use request isperformed multiple times when the user of the terminal B 380 wants thecommunication by the F2F in the process that is not according to theexemplary embodiments to cause wasteful communication (Step S410 and thesubsequent steps) until the user of the terminal B 380 is capable ofaccepting the F2F.

FIG. 5 is a flowchart illustrating an exemplary process according to thefirst exemplary embodiment.

Referring to FIG. 5, in Step S502, the terminal 100 submits the userconfirmation request to the presence server 150. Step S502 is the sameas Step S302 illustrated in FIG. 3.

In Step S504, the presence server 150 returns a response to the terminal100. Step S504 is the same as Step S304 illustrated in FIG. 3. Althoughthe processing corresponding to the Step S502 and Step S504 is notdescribed in flowcharts illustrated in FIG. 6 and the subsequentdrawings, the processing may be performed as preprocessing.

In Step S506, the terminal 180 submits the presence use request to thepresence server 150.

In Step S508, the presence server 150 notifies the terminal 100 of thepresence use request.

In Step S510, no presence information is transmitted because <Stop>: thestate of the user of the terminal 100 is during a meeting. Specifically,the user state acquisition module 110 extracts the fact that the stateof the user of the terminal 100 is during a meeting from the electronicdiary as the current state of the user of the terminal 100, thedetermination module 115 determines that the communication method isnon-acceptable in the during-meeting state, and the communicationcontrol module 120 controls the communication module 105 so as not totransmit the presence registration request.

In Step S512, the terminal 100 submits the presence registration requestto the presence server 150 and transmits phone call acceptable 512 a tothe presence server 150 as the state of the user of the terminal 100.Specifically, the user state acquisition module 110 extracts completionof the meeting (phone call acceptable) from the during-meeting state asthe current state of the user of the terminal 100, the determinationmodule 115 determines that the communication method is acceptable in thecompletion-of-the-meeting state (phone call acceptable), and thecommunication control module 120 controls the communication module 105so as to transmit the presence registration request.

In Step S514, the presence server 150 transmits the presencenotification to the terminal 180 and transmits phone call acceptable 514a to the terminal 180 as the state of the user of the terminal 100.

In Step S516, the terminal 180 submits the presence use request to thepresence server 150.

In Step S518, the presence server 150 notifies the terminal 100 of thepresence use request.

In Step S520, no presence information is transmitted because <Stop>: thestate of the user of the terminal 100 is during a meeting.

FIG. 6 is a flowchart illustrating another exemplary process accordingto the first exemplary embodiment. This flowchart illustrates anexemplary process in a case in which the communication method (“F2F”here) from the user of the terminal 180 to the user of the terminal 100is included in the presence use request. In other words, it isdetermined whether the communication method is acceptable in thisexemplary process.

Referring to FIG. 6, in Step S602, the terminal 180 submits the presenceuse request to the presence server 150 and transmits F2F 602 a which theuser of the terminal 180 wants as the communication method with the userof the terminal 100 to the presence server 150.

In Step S604, the presence server 150 notifies the terminal 100 of thepresence use request and transmits F2F 604 a which the user of theterminal 180 wants as the communication method with the user of theterminal 100 to the terminal 100.

In Step S606, no presence information is transmitted because <Stop>: thestate of the user of the terminal 100 is “during a meeting in a customersite” and the F2F 602 a is non-acceptable.

In Step S608, <Stop>: the change of the state of the user of theterminal 100 is detected. No presence information is transmittedbecause, even if the state of the user of the terminal 100 is changed to“walking outside”, the F2F 602 a is non-acceptable in the“walking-outside” state.

In Step S610, the presence information is transmitted because<Execution>: the change of the state of the user of the terminal 100 to“own seat in site 612 a” is detected and the F2F 602 a is acceptable.

In Step S612, the terminal 100 submits the presence registration requestto the presence server 150 and transmits the own seat in site 612 a tothe presence server 150 as the state of the user of the terminal 100.

In Step S614, the presence server 150 transmits the presencenotification to the terminal 180 and transmits own seat in site 614 a tothe terminal 180 as the state of the user of the terminal 100.

FIG. 7 is a flowchart illustrating another exemplary process accordingto the first exemplary embodiment. This flowchart illustrates anexemplary process in a case in which the communication method (“phonecall” here) from the user of the terminal 180 to the user of theterminal 100 is included in the presence use request. In other words, itis determined whether the communication method is acceptable in thisexemplary process.

Referring to FIG. 7, in Step S702, the terminal 180 submits the presenceuse request to the presence server 150 and transmits phone call 702 awhich the user of the terminal 180 wants as the communication methodwith the user of the terminal 100 to the presence server 150.

In Step S704, the presence server 150 notifies the terminal 100 of thepresence use request and transmits phone call 704 a which the user ofthe terminal 180 wants as the communication method with the user of theterminal 100 to the terminal 100.

In Step S706, no presence information is transmitted because <Stop>: thestate of the user of the terminal 100 is “during a meeting in a customersite” and the phone call 702 a is non-acceptable.

In Step S708, the presence information is transmitted because<Execution>: the change of the state of the user of the terminal 100 to“walking outside 710 a” is detected and the phone call 702 a isacceptable. In other words, when the communication method is the phonecall, it is determined that the communication method is non-acceptablein the “during a meeting in a customer site” state and that thecommunication method is acceptable in the state “walking outside 710 a.”

In step S710, the terminal 100 submits the presence registration requestto the presence server 150 and transmits the walking outside 710 a tothe presence server 150 as the state of the user of the terminal 100.

In Step S712, the presence server 150 transmits the presencenotification to the terminal 180 and transmits walking outside 712 a tothe terminal 180 as the state of the user of the terminal 100.

FIG. 8 is a flowchart illustrating another exemplary process accordingto the first exemplary embodiment. This flowchart illustrates anexemplary process in a case in which multiple terminals receive thepresence use request. Specifically, the user of the terminal 180 wantsto communicate by the F2F with the users of the terminal 100A, theterminal 100C, and the terminal 100D.

Referring to FIG. 8, in Step S802, the terminal 180 submits the presenceuse request to the presence server 150 and transmits F2F 802 a which theuser of the terminal 180 wants as the communication method with theusers of the terminal 100A, the terminal 100C, and the terminal 100D tothe presence server 150.

In Step S804, the presence server 150 notifies the terminal 100A of thepresence use request and transmits F2F 804 a which the user of theterminal 180 wants as the communication method with the user of theterminal 100A to the terminal 100A.

In Step S806, the presence server 150 notifies the terminal 100C of thepresence use request and transmits F2F 806 a which the user of theterminal 180 wants as the communication method with the user of theterminal 100C to the terminal 100C.

In Step S808, the presence server 150 notifies the terminal 100D of thepresence use request and transmits F2F 808 a which the user of theterminal 180 wants as the communication method with the user of theterminal 100D to the terminal 100D. The processing from Step S804 toStep S808 may broadcasted.

In Step S810, no presence information is transmitted because <Stop>: thestate of the user of the terminal 100A is “during a meeting in acustomer site” and the F2F 802 a is non-acceptable in the “during ameeting in a customer site” state. Specifically, the user stateacquisition module 110 in the terminal 100A extracts the “during ameeting in a customer site” as the state of the user of the terminal100A, the determination module 115 determines that the F2F isnon-acceptable in the during-meeting-in-customer-site state, and thecommunication control module 120 controls the communication module 105so as not to transmit the presence registration request.

In Step S812, no presence information is transmitted because <Stop>: thestate of the user of the terminal 100C is “walking outside” and the F2F802 a is non-acceptable in the “walking outside” state. Specifically,the user state acquisition module 110 in the terminal 100C extracts the“walking outside” as the state of the user of the terminal 100C, thedetermination module 115 determines that the F2F is non-acceptable inthe walking-outside state, and the communication control module 120controls the communication module 105 so as not to transmit the presenceregistration request.

In Step S814, the terminal 100D submits the presence registrationrequest to the presence server 150 and transmits own seat in site 814 ato the presence server 150 as the state of the user of the terminal100D. Specifically, the user state acquisition module 110 in theterminal 100D extracts the own seat in site 814 a as the state of theuser of the terminal 100D, the determination module 115 determines thatthe F2F is acceptable in the own-seat-in-site state, and thecommunication control module 120 controls the communication module 105so as to transmit the presence registration request.

In Step S816, the presence server 150 transmits the presencenotification to the terminal 180 and transmits own seat in site 816 a tothe terminal 180 as the state of the user of the terminal 100D.

In the exemplary process in FIG. 8, the presence registration request istransmitted only from the terminal (the terminal 100D) the F2F isestablished for the user of which to decrease the communication count.

FIG. 9 conceptually illustrates the module configuration diagram of anexemplary configuration according to a second exemplary embodiment. Theconfiguration of the second exemplary embodiment illustrated in FIG. 9results from addition of a user state acquisition module 192 and adetermination module 194 to the terminal 180 of the first exemplaryembodiment illustrated in FIG. 1. The same reference numerals are usedin FIG. 9 to identify the same components illustrated in FIG. 1. Aduplicated description of such components is omitted herein. The sameapplies to the following module configuration diagram. In the secondexemplary embodiment, if the user of the terminal 180 enters the statein which the communication method is non-acceptable after the state ofthe user of the terminal 180 is also acquired and the presence userequest including the communication method is submitted, the submissionof the presence use request is stopped.

Referring to FIG. 9, the terminal 180 includes the communication module185, the presence confirmation module 190, the user state acquisitionmodule 192, and the determination module 194.

The communication module 185 transmits the notification to inquire aboutthe state of the user of the terminal 100 and the communication methodto the portable terminal 100.

The user state acquisition module 192 acquires the state of the user ofthe portable terminal 180. The user state acquisition module 192performs processing similar to that of the user state acquisition module110 in the terminal 100 to acquire the state of the user of the terminal180.

The determination module 194 determines whether the communication methodis non-acceptable in the state acquired by the user state acquisitionmodule 192 after the notification is transmitted by the communicationmodule 185. The determination module 194 performs processing similar tothat of the determination module 115 in the terminal 100 to determinewhether the communication method is acceptable in the state of the userof the terminal 180.

The communication module 185 transmits a notification to stop theinquiry to the terminal 100 if the determination module 194 determinesthat the communication method is not acceptable in the state of the userof the terminal 180.

FIG. 10 is a flowchart illustrating an exemplary process according tothe second exemplary embodiment.

Referring to FIG. 10, in Step S1002, the terminal 180 submits thepresence use request to the presence server 150 and transmits F2F 1002 awhich the user of the terminal 180 wants as the communication methodwith the user of the terminal 100 to the presence server 150.

In Step S1004, the presence server 150 notifies the terminal 100 of thepresence use request and transmits F2F 1004 a which the user of theterminal 180 wants as the communication method with the user of theterminal 100 to the terminal 100.

In Step S1006, no presence information is transmitted because <Stop>:the state of the user of the terminal 100 is “during a meeting in acustomer site” and the F2F 1002 a is non-acceptable in the state. StepsS1002 to S1006 are the same as in the first exemplary embodiment.

In Step S1008, it is determined that the communication method, which isthe F2F 1002 a, is non-acceptable in the state of the user of theterminal 180 because the state of the user of the terminal 180 ischanged to “walking outside.” Specifically, the user state acquisitionmodule 192 in the terminal 180 extracts “walking outside” as the stateof the user of the terminal 180 and the determination module 194determines that the F2F is non-acceptable in the state of the user ofthe terminal 180.

In Step S1010, the terminal 180 submits a request to cancel the use ofthe presence to the presence server 150.

In Step S1012, the presence server 150 notifies the terminal 100 of thecancel of the use of the presence.

In Step S1014, it is not necessary to submit the presence registrationrequest because the state at the terminal 180 side is changed to cancelthe use of the presence although the user of the terminal 100 side iscapable of the F2F.

FIG. 11 conceptually illustrates the module configuration diagram of anexemplary configuration according to a third exemplary embodiment. Theconfiguration of the third exemplary embodiment illustrated in FIG. 11results from exclusion of the determination module 115 and thecommunication control module 120 from the terminal 100 of the firstexemplary embodiment illustrated in FIG. 1 and addition of anotification destination user state acquisition module 172 and adetermination module 174 to the presence server 150 of the firstexemplary embodiment illustrated in FIG. 1. The determination processingand so on performed in the terminal 100 and the terminal 180 areperformed in the presence server 150 in the third exemplary embodiment.In this case, although the presence registration request and so on aresubmitted to the presence server 150 even if the communication method isnon-acceptable in the terminal 100 and the terminal 180, unnecessarypresence notification is not transmitted when the presence server 150determines that the communication method is non-acceptable.

The terminal 100 includes the communication module 105 and the userstate acquisition module 110.

The terminal 180 includes the communication module 185 and the presenceconfirmation module 190.

The presence server 150 includes the communication module 155, thepresence control module 160, the user management module 165, thepresence state management module 170, the notification destination userstate acquisition module 172, the determination module 174, and thepresence state storage module 175.

The communication module 155 receives the notification to inquire aboutthe state of the user of the portable terminal 100 from the portableterminal 180. Upon reception of the notification, the communicationmodule 155 transmits the notification to the terminal 100. Thecommunication module 155 receives the state of the user of the terminal100 as a reply to the notification transmitted to the terminal 100.

The communication module 155 may receive the communication method fromthe terminal 180.

The notification destination user state acquisition module 172 acquiresthe state of the user of the terminal 100 or the terminal 180. Thenotification destination user state acquisition module 172 performsprocessing similar to that of the user state acquisition module 110described above. However, the outputs from the respective sensors in theterminal 100 may be received to recognize the state of the user of theterminal 100 by the notification destination user state acquisitionmodule 172.

The determination module 174 determines whether the request from theterminal 180 is acceptable in the state of the user of the terminal 100,received by the communication module 155.

The determination module 174 may determine whether the communicationmethod received by the communication module 155 is acceptable in thestate of the user of the terminal 100 if the notification is received bythe communication module 155.

The presence control module 160 controls the communication module 155 soas not to transmit the state of the user of the terminal 100 to theterminal 180 if the determination module 174 determines to benon-acceptable. The presence control module 160 may control thecommunication module 155 so as to transmit the state of the user of theterminal 100 to the terminal 180 as a reply to the notification receivedby the communication module 155 only if the determination module 174determines to be acceptable.

The presence control module 160 may control the transmission so as notto transmit the state of the user of the terminal 100 to the terminal180 if the determination module 174 determines to be non-acceptable.Alternatively, the presence control module 160 may control thetransmission so as not to transmit the notification to the terminal 100if the determination module 174 determines to be non-acceptable.

FIG. 12 is a flowchart illustrating an exemplary process according tothe third exemplary embodiment.

Referring to FIG. 12, in Step S1202, the terminal 180 submits thepresence use request to the presence server 150 and transmits F2F 1202 awhich the user of the terminal 180 wants as the communication methodwith the users of the terminal 100A, the terminal 100C, and the terminal100D to the presence server 150.

In Step S1204, the presence server 150 notifies the terminal 100A of thepresence use request and transmits F2F 1204 a which the user of theterminal 180 wants as the communication method with the user of theterminal 100A to the terminal 100A.

In Step S1206, the presence server 150 notifies the terminal 100C of thepresence use request and transmits F2F 1206 a which the user of theterminal 180 wants as the communication method with the user of theterminal 100C to the terminal 100C.

In Step S1208, the presence server 150 notifies the terminal 100D of thepresence use request and transmits F2F 1208 a which the user of theterminal 180 wants as the communication method with the user of theterminal 100D to the terminal 100D. The processing from Step S1204 toStep S1208 may broadcasted.

In Step S1210, the terminal 100A submits the presence registrationrequest to the presence server 150 and transmits during meeting incustomer site 1210 a to the presence server 150 as the state of the userof the terminal 100A.

In Step S1212, the terminal 100C submits the presence registrationrequest to the presence server 150 and transmits walking outside 1212 ato the presence server 150 as the state of the user of the terminal100C.

In Step S1214, the terminal 100D submits the presence registrationrequest to the presence server 150 and transmits own seat in site 1214 ato the presence server 150 as the state of the user of the terminal100D.

In Step S1216, the presence server 150 transmits the presencenotification to the terminal 180 and transmits own seat in site 1216 ato the terminal 180 as the state of the user of the terminal 100D.Specifically, the notification destination user state acquisition module172 acquires the states of the users of the terminal 100A, the terminal100C, and the terminal 100D acquired in Step S1210 to Step S1214. Thenon-acceptable state table for-every-communication-method 1500 is usedto select the terminal 100D the F2F 1202 a is acceptable in the state ofthe user of which and the state of the user of the terminal 100D istransmitted to the terminal 180.

Although the presence registration request, which is the reply to thepresence use request, is submitted from each of the terminal 100A, theterminal 100C, and the terminal 100D in the exemplary processillustrated in FIG. 12, only the state of the user of the terminal 100Din which the communication method “F2F” from the terminal 180 isacceptable is transmitted from the presence server 150 to the terminal180.

FIG. 13 is a flowchart illustrating another exemplary process accordingto the third exemplary embodiment.

Referring to FIG. 13, in Step S1302, the terminal 180 submits thepresence use request to the presence server 150 and transmits F2F 1302 awhich the user of the terminal 180 wants as the communication methodwith the users of the terminal 100A, the terminal 100C, and the terminal100D to the presence server 150. Specifically, the notificationdestination user state acquisition module 172 in the presence server 150acquires the states of the users of the terminal 100A, the terminal100C, and the terminal 100D. For example, the notification destinationuser state acquisition module 172 acquires the current plan from theelectronic diary of each user. The determination module 174 uses thenon-acceptable state table for-every-communication-method 1500 todetermine that the F2F 1302 a is acceptable in the states of the usersof the terminal 100C and the terminal 100D. Accordingly, the presencecontrol module 160 controls the communication module 155 so as totransmit the notification to the terminal 100C and the terminal 100D butcontrols the communication module 155 so as not to transmit thenotification to the terminal 100A.

In Step S1304, the presence server 150 notifies the terminal 100C of thepresence use request and transmits F2F 1304 a which the user of theterminal 180 wants as the communication method with the user of theterminal 100C to the terminal 100C.

In Step S1306, the presence server 150 notifies the terminal 100D of thepresence use request and transmits F2F 1306 a which the user of theterminal 180 wants as the communication method with the user of theterminal 100D to the terminal 100D.

In Step S1308, the terminal 100C submits the presence registrationrequest to the presence server 150 and transmits walking outside 1308 ato the presence server 150 as the state of the user of the terminal100C.

In Step S1310, the terminal 100D submits the presence registrationrequest to the presence server 150 and transmits own seat in site 1310 ato the presence server 150 as the state of the user of the terminal100D.

In Step S1312, the presence server 150 transmits the presencenotification to the terminal 180 and transmits own seat in site 1312 ato the terminal 180 as the state of the user of the terminal 100D.Specifically, the notification destination user state acquisition module172 acquires the states of the users of the terminal 100C and theterminal 100D acquired in Step S1308 to Step S1310. The non-acceptablestate table for-every-communication-method 1500 is used to select theterminal 100D the F2F 1302 a is acceptable in the state of the user ofwhich and the state of the user of the terminal 100D is transmitted tothe terminal 180.

In the exemplary process illustrated in FIG. 13, no notification istransmitted to the terminal 100A. Although the presence registrationrequest, which is the reply to the presence use request, is transmittedfrom each of the terminal 100C and the terminal 100D, only the state ofthe user of the terminal 100D in which the communication method “F2F”from the terminal 180 is acceptable is transmitted from the presenceserver 150 to the terminal 180.

A computer that executes programs according to the exemplary embodiments(the terminal 100, the presence server 150, and the terminal 180) has ahardware configuration illustrated in FIG. 16. The computer illustratedin FIG. 16 is a general computer and specifically is used as a personalcomputer, a server, or the like. Specifically, the computer uses acentral processing unit (CPU) 1601 as a processing unit (operation unit)and uses a random access memory (RAM) 1602, a read only memory (ROM)1603, and a hard disk (HD) 1604 as storage units. The computer includesthe CPU 1601 that executes the programs including the communicationmodule 105, the user state acquisition module 110, the determinationmodule 115, the communication control module 120, the communicationmodule 155, the presence control module 160, the user management module165, the presence state management module 170, the presence statestorage module 175, the communication module 185, the presenceconfirmation module 190, the user state acquisition module 192, thedetermination module 194, the notification destination user stateacquisition module 172, and the determination module 174; the RAM 1602storing the programs and data; the ROM 1603 storing programs for bootingthe computer and so on; the HD 1604, which is an auxiliary storage unit;an acceptance unit 1606 that accepts data on the basis of an operationby the user with a keyboard, a mouse, a touch panel, or the like; anoutput unit 1605, such as a cathode ray tube (CRT) or a liquid crystaldisplay; a communication line interface 1607 for connecting to acommunication network, such as a network interface card; and a bus 1608which connects the above components and through which data is exchanged.Multiple computers may be connected to each other via a network.

Although both the terminal 100 and the terminal 180 are portableterminals in the above exemplary embodiments, it is sufficient for atleast one of the terminal 100, which is at a request receiving side, andthe terminal 180, which is at a requesting side, to be a portableinformation processing apparatus. When one of the terminal 100 and theterminal 180 is a portable information processing apparatus and theother thereof is a non-portable information processing apparatus (theterminal 180 when the terminal 100 is portable and the terminal 100 whenthe terminal 180 is portable), for example, a stationary informationprocessing apparatus, such as a desktop personal computer, may be usedas the information processing apparatus that is not portable. Forexample, when the state of the user is acquired by using any sensor in aterminal in the above exemplary embodiments, the other terminal may notbe portable if the terminal including the sensor is portable.

In the computer programs according the above exemplary embodiments, thesystem having the above hardware configuration is caused to read out thecomputer programs, which are software. The software cooperates with thehardware resources to realize the exemplary embodiments.

The hardware configuration illustrated in FIG. 16 is only an exemplaryconfiguration and the exemplary embodiments are not limited to theconfiguration illustrated in FIG. 16 as long as the modules described inthe above exemplary embodiments are executable in the hardwareconfiguration. For example, part of the modules may be composed ofdedicated hardware (for example, an application specific integratedcircuit (ASIC)), part of the modules may be in an external system andmay be connected via a communication line, or multiple systemsillustrated in FIG. 16 may be connected to each other via acommunication line for cooperation. In particular, the systemillustrated in FIG. 16 may be incorporated in a home informationappliance, a copier, a facsimile, a scanner, a printer, or amultifunction peripheral (an image processing apparatus having at leasttwo functions of the scanner, the printer, the copier, the facsimile,and so on), instead of the personal computer.

Although the non-acceptable state list 1400 illustrated in FIG. 14 andthe non-acceptable state table for-every-communication-method 1500illustrated in FIG. 15 each store the non-acceptable conditions, thenon-acceptable state list 1400 and the non-acceptable state tablefor-every-communication-method 1500 may each store acceptableconditions. In this case, the determination of whether the communicationmethod is acceptable in the state is reversely performed.

The programs described above may be stored and provided in a recordingmedium or may be provided via a communication unit. In this case, theprograms described above may be considered as a “computer readablerecording medium recording the programs.”

The “computer readable recording medium recording the programs” is arecording medium that is readable by a computer in which the programsare recorded and that is used for, for example, installation, execution,and distribution of the programs.

The recording medium may be, for example, a digital versatile disk(DVD), such as “a DVD-R, a DVD-RW, a DVE-RAM, or the like” conforming toa DVD Forum standard or “a DVD+R, a DVD+RW, or the like” conforming to aDVD+RW standard; a compact disc (CD), such as a CD-ROM, a CD-recordable(CD-R), a CD-rewritable (CD-RW), or the like; a Blu-ray (registeredtrademark) disc; a magneto-optical (MO) disk; a flexible disk (FD); amagnetic tape; a hard disk; a ROM; an electrically erasable andprogrammable read only memory EEPROM (registered trademark); a flashmemory; a RAM; or a secure digital (SD) memory card.

The programs described above or part of the programs may be recorded onthe recording medium described above for storage and distribution. Theprograms described above or part of the programs may be transmitted bycommunication, for example, via a transmission medium, such as a wirednetwork, a wireless communication network, or a combination of them,which is used in a local area network (LAN), a metropolitan area network(MAN), a wide area network (WAN), the Internet, an intranet, anextranet, or the like. Alternatively, the programs described above orpart of the programs may be carried on carriers.

Each of the programs described above may be part of another program ormay be recoded on a recording medium along with other programs. Theprogram may be divided to be recorded in multiple recording media.Alternatively, the program may be recorded in any format, such as in acompressed format or encoded format, as long as the program is capableof being decoded.

The foregoing description of the exemplary embodiments of the presentinvention has been provided for the purposes of illustration anddescription. It is not intended to be exhaustive or to limit theinvention to the precise forms disclosed. Obviously, many modificationsand variations will be apparent to practitioners skilled in the art. Theembodiments were chosen and described in order to best explain theprinciples of the invention and its practical applications, therebyenabling others skilled in the art to understand the invention forvarious embodiments and with the various modifications as are suited tothe particular use contemplated. It is intended that the scope of theinvention be defined by the following claims and their equivalents.

What is claimed is:
 1. A mobile device comprising: a memory configuredto store a table comprising a communication method of the mobile devicein association with a condition that indicates a user of the mobiledevice is unavailable to communicate using the communication method; atleast one hardware processor configured to: receive a request from acounterpart mobile device to communicate with the mobile device usingthe communication method; determine a current state of a user of themobile device; determine whether communication between the mobile deviceand the counterpart mobile device using the communication method isunavailable based on the current state of the user of the mobile devicecorresponding to the condition that indicates the user of the mobiledevice is unavailable to communicate using the communication methodstored in the memory; withhold transmission of presence information ofthe user of the mobile device indicating that communication between themobile device and the counterpart mobile device using the communicationmethod is available, in response to determining that communicationbetween the mobile device and the counterpart mobile device using thecommunication method is unavailable; and transmit to the counterpartmobile device presence information of the user of the mobile deviceindicating that communication between the mobile device and thecounterpart mobile device using the communication method is availablebased on the current state of the user of the mobile device, in responseto determining that communication between the mobile device and thecounterpart mobile device using the communication method is available.2. A non-transitory computer readable medium storing a program causing amobile device to execute a method of transmitting presence informationto a counterpart mobile device, the method comprising: receiving requestfrom the counterpart mobile device to communicate with the mobile deviceusing a communication method; determining a current state of a user ofthe mobile device; determining, by reading a table comprising thecommunication method of the mobile device in association with acondition that indicates the user of the mobile device is unavailable tocommunicate using the communication method stored in a memory of themobile device, whether communication between the mobile device and thecounterpart mobile device using the communication method is unavailablebased on the current state of the user of the mobile devicecorresponding to the condition that indicates the user of the mobiledevice is unavailable to communicate using the communication methodstored in the memory; withholding transmission of presence informationof the user of the mobile device indicating that communication betweenthe mobile device and the counterpart mobile device using thecommunication method is available, in response to determining thatcommunication between the mobile device and the counterpart mobiledevice using the communication method is unavailable; and transmittingto the counterpart mobile device presence information of the user of themobile device indicating that communication between the mobile deviceand the counterpart mobile device using the communication method isavailable based on the current state of the user of the mobile device,in response to determining that communication between the mobile deviceand the counterpart mobile device using the communication method isavailable.
 3. A method of a mobile device transmitting presenceinformation to a counterpart mobile device, the method comprising:receiving request from the counterpart mobile device to communicate withthe mobile device using a communication method; determining a currentstate of a user of the mobile device; determining, by reading a tablecomprising the communication method of the mobile device in associationwith a condition that indicates the user of the mobile device isunavailable to communicate using the communication method stored in amemory of the mobile device, whether communication between the mobiledevice and the counterpart mobile device using the communication methodis unavailable based on the current state of the user of the mobiledevice corresponding to the condition that indicates the user of themobile device is unavailable to communicate using the communicationmethod stored in the memory; withholding transmission of presenceinformation of the user of the mobile device indicating thatcommunication between the mobile device and the counterpart mobiledevice using the communication method is available, in response todetermining that communication between the mobile device and thecounterpart mobile device using the communication method is unavailable;and transmitting to the counterpart mobile device presence informationof the user of the mobile device indicating that communication betweenthe mobile device and the counterpart mobile device using thecommunication method is available based on the current state of the userof the mobile device, in response to determining that communicationbetween the mobile device and the counterpart mobile device using thecommunication method is available.
 4. The mobile device according toclaim 1, wherein the condition comprises at least one of a location ofthe mobile device, a movement state of the mobile device, and a state ofthe user of the mobile device.
 5. The mobile device according to claim4, wherein the condition is the location of the mobile device, whereinthe mobile device further comprises a global positioning system (GPS)sensor configured to determine a current location of the mobile device,and wherein the at least one hardware processor is configured todetermine the current state of the user of the mobile device correspondsto the current location of the mobile device determined by the GPSsensor and configured to determine that communication between the mobiledevice and the counterpart mobile device using the communication methodis unavailable based on the current location of the mobile devicedetermined by the GPS sensor corresponding to the location of the mobiledevice stored in the memory.
 6. The mobile device according to claim 1,wherein the condition is the movement state of the mobile device,wherein the mobile device further comprises an acceleration sensorconfigured to determine a current movement of the mobile device, andwherein the at least one hardware processor is configured to determinethe current state of the user of the mobile device corresponds to thecurrent movement of the mobile device determined by the accelerationsensor and configured to determine that communication between the mobiledevice and the counterpart mobile device using the communication methodis unavailable based on the current movement of the mobile devicedetermined by the acceleration sensor corresponding to the movementstate of the mobile device stored in the memory.
 7. The mobile deviceaccording to claim 4, wherein the condition is the state of the user ofthe mobile device, and wherein the at least one hardware processor isconfigured to determine the current state of the user of the mobiledevice based on an electronic diary of the user of the mobile device andconfigured to determine that communication between the mobile device andthe counterpart mobile device using the communication method isunavailable based on the current state of the user of the mobile devicecorresponding to the state of the user of the mobile device stored inthe memory.
 8. The mobile device according to claim 1, wherein thecondition comprises a location of the mobile device and a state of theuser of the mobile device.
 9. The mobile device according to claim 8,wherein the mobile device further comprises a global positioning system(GPS) sensor configured to determine a current location of the mobiledevice, and wherein the at least one hardware processor is configured todetermine the current state of the user of the mobile device correspondsto the current location of the mobile device determined by the GPSsensor and corresponds to a user status in an electronic diary of theuser of the mobile device, and configured to determine thatcommunication between the mobile device and the counterpart mobiledevice using the communication method is unavailable based on thecurrent location of the mobile device determined by the GPS sensorcorresponding to the location of the mobile device stored in the memoryand based on the current state of the user of the mobile devicecorresponding to the user status in the electronic diary stored in thememory.
 10. The mobile device according to claim 1, wherein thecommunication method of the mobile device in association with thecondition that indicates the user of the mobile device is unavailable tocommunicate using the communication method comprises: a firstcommunication method in association with a first condition thatindicates the user of the mobile device is unavailable to communicateusing the first communication method; and a second communication methodin association with a second condition that indicates the user of themobile device is unavailable to communicate using the secondcommunication method.
 11. The mobile device according to claim 10,wherein the first condition comprises at least one of a first locationof the mobile device, a first movement state of the mobile device, and afirst state of the user of the mobile device, and wherein the secondcondition comprises at least one of a second location of the mobiledevice, a second movement state of the mobile device, and a second stateof the user of the mobile device.
 12. The mobile device according toclaim 11, wherein the first condition is the first location of themobile device, wherein the second condition is the second location ofthe mobile device, wherein the mobile device further comprises a globalpositioning system (GPS) sensor configured to determine a currentlocation of the mobile device, and wherein the at least one hardwareprocessor is configured to determine the current state of the user ofthe mobile device corresponds to the current location of the mobiledevice determined by the GPS sensor, configured to determine thatcommunication between the mobile device and the counterpart mobiledevice using the first communication method is unavailable based on thecurrent location of the mobile device determined by the GPS sensorcorresponding to the first location of the mobile device stored in thememory, and configured to determine that communication between themobile device and the counterpart mobile device using the secondcommunication method is unavailable based on the current location of themobile device determined by the GPS sensor corresponding to the secondlocation of the mobile device stored in the memory.
 13. The mobiledevice according to claim 11, wherein the first condition is the firstmovement state of the mobile device, wherein the second condition is thesecond movement state of the mobile device, wherein the mobile devicefurther comprises an acceleration sensor configured to determine acurrent movement of the mobile device, and wherein the at least onehardware processor is configured to determine the current state of theuser of the mobile device corresponds to the current movement of themobile device determined by the acceleration sensor, configured todetermine that communication between the mobile device and thecounterpart mobile device using the first communication method isunavailable based on the current movement of the mobile devicedetermined by the acceleration sensor corresponding to the firstmovement state of the mobile device stored in the memory, and configuredto determine that communication between the mobile device and thecounterpart mobile device using the second communication method isunavailable based on the current movement of the mobile devicedetermined by the acceleration sensor corresponding to the secondmovement state of the mobile device stored in the memory.
 14. The mobiledevice according to claim 11, wherein the first condition is the firststate of the user of the mobile device, wherein the second condition isthe second state of the user of the mobile device, and wherein the atleast one hardware processor is configured to determine the currentstate of the user of the mobile device based on an electronic diary ofthe user of the mobile device, configured to determine thatcommunication between the mobile device and the counterpart mobiledevice using the first communication method is unavailable based on thecurrent state of the user of the mobile device corresponding to thefirst state of the user of the mobile device stored in the memory, andconfigured to determine that communication between the mobile device andthe counterpart mobile device using the second communication method isunavailable based on the current state of the user of the mobile devicecorresponding to the second state of the user of the mobile devicestored in the memory.